import base from './base'; // 导入接口域名列表
import axios from './http'; // 导入http中创建的axios实例
import qs from 'qs'; // 根据需求是否导入qs模块


// 导出接口
export default {    
    // 密码登录
    login (params) {        
        return axios.get(`${base.login}`, {params});    
    },
    // 登出
    loginOut(){
        return axios.get(`${base.loginOut}`)
    },
    // 验证码登录
    loginSendCode(params){
        return axios.get(`${base.login2}`, params); 
    },
    // 验证验证码
    testLoginCode(params){
        return axios.get(`${base.login3}`, params); 
    },
    // 获取图片验证码
    getImgCode(p,config){
        return axios.get(`${base.imgCode}?uuid=${p}`,config)
    },

    // 注册时 发送手机验证码
    registerSendPCode(params){
        // `${base.deleteAuth}?id=${p}`
        // return axios.post(`${base.index}?phone=${params}`);
        return axios.get(`${base.index}`, params); 
    },
    // 验证手机验证码
    testRegisterPCode(params){
        return axios.post(`${base.index1}`, params); 
    },
    // 发送邮箱验证码
    registerSendECode(params){
        return axios.get(`${base.index2}`, params); 
    },
    // 验证邮箱验证码
    testRegisterECode(params){
        return axios.post(`${base.index3}`, params); 
    },

    // 获取所有用户数据
    getAllUserData(params){
        if(params) return axios.get(`${base.getUser}`, {params}); 
        return axios.get(`${base.getUser}`); 
    },
    // 根据用户id查询用户信息
    selectUserById(p){
        return axios.get(`${base.selectUserById}`,p); 
    },
    // 修改用户信息
    modifyUser(p){
        return axios.post(`${base.modifyUser}`,p); 
    },
    // 修改用户密码
    modifyPwd(p){
        return axios.post(`${base.modifyPwd}`,p); 
    },
    // 删除用户数据
    deleteUser(p){
        if(p) return axios.post(`${base.deleteUser}`,p); 
        return axios.post(`${base.deleteUser}`); 
    },
    // 忘记密码 -- 重置密码
    resetPsd(params){
        return axios.post(`${base.resetPsd}`,params); 
    },
    

    // 添加角色
    addRole(p){
        return axios.post(`${base.addRole}`,p); 
    },
    // 根据id查询角色信息
    selectRoleById(p){
        return axios.get(`${base.selectRoleById}`,p); 
    },
    // 修改角色
    updateRole(p){
        return axios.post(`${base.updateRole}`,p); 
    },
    // 删除角色
    deleteRole(p){
        return axios.get(`${base.deleteRole}`,p); 
    },
    // 获取所有角色数据
    getRoleData(p){
        if(p)return axios.get(`${base.queryroles}`, p); 
        return axios.get(`${base.queryroles}`); 
    },
    // 查询所有角色 -- 不分页
    selectAllRoles(){
        return axios.get(`${base.queryAllRoles}`)
    },

    // 查询所有单位 -- 不分页
    selectAllUnit(){
        return axios.get(`${base.selectUnit}`); 
    },
    // 查询所有单位 -- 分页
    selectUnit(params){
        return axios.get(`${base.selectUnit}`,{params}); 
    },
    // 根据id查询单位信息
    selectUnitById(p){
        return axios.get(`${base.selectUnitById}`,p); 
    },
    // 新增单位
    addUnit(p){
        return axios.post(`${base.addUnit}`,p); 
    },
    // 修改单位
    modifyUnit(p){
        return axios.post(`${base.modifyUnit}`,p); 
    },
    // 删除单位
    deleteUnit(p){
        return axios.post(`${base.deleteUnit}`,p); 
    },

    // 查询所有权限 -- 不分页
    selectAuthAll(p){
        return axios.get(`${base.selectAuthAll}`,p)
    },
    // 查询所有权限 -- 分页
    selectAuth(p){
        return axios.get(`${base.selectAuth}`,p); 
    },
    // 根据id查询权限
    selectAuthById(p){
        return axios.get(`${base.selectAuthById}`,p); 
    },
    // 新增权限
    addAuth(p){
        return axios.post(`${base.addAuth}`,p); 
    },
    // 修改权限
    modifyAuth(p){
        return axios.post(`${base.modifyAuth}`,p); 
    },
    // 删除权限
    deleteAuth(p){
        return axios.post(`${base.deleteAuth}?id=${p}`); 
    },
     
    // 查询所有的数据字典
    selectAllDictGroup(p){
        return axios.get(`${base.selectAllDictGroup}`,p); 
    },
    // 分组查询数据字典分组
    selectDictGroup(params){
        return axios.get(`${base.selectDictGroup}`,{params});
    },
    // 根据id查询字典分组
    selectDictGroupById(p){
        return axios.get(`${base.selectDictGroupById}/${p}`);
    },
    // 新增字典分组
    addDictGroup(p){
        return axios.post(`${base.addDictGroup}`,p);
    },
    // 修改字典分组
    updateDictGroup(p){
        return axios.post(`${base.modifyDictGroup}`,p);
    },
    // 删除字典分组
    deleteDictGroup(p){
        return axios.post(`${base.deleteDictGroup}`,p);
    },


    // 查询所有的数据字典
    selectAllDict(p){
        return axios.get(`${base.selectAllDict}`,p); 
    },
    // 分组查询数据字典
    selectDict(p){
        return axios.get(`${base.selectDict}`,{p});
    },
    // 根据code查询数据字典
    selectDictBycode(p){
        return axios.get(`${base.selectDictBycode}`,p);
    },
    // 根据id查询字典
    selectDictById(p){
        return axios.get(`${base.selectDictById}/${p}`);
    },
    // 新增字典分组
    addDict(p){
        return axios.post(`${base.addDict}`,p);
    },
    // 修改字典分组
    updateDict(p){
        return axios.post(`${base.modifyDict}`,p);
    },
    // 删除字典分组
    deleteDict(p){
        return axios.get(`${base.deleteDict}/${p}`);
    },

    // 查询所有菜单--不分页
    selectAllMenu(){
        return axios.get(`${base.selectMenu}`);
    },
    // 查询所有菜单信息 -- 分页
    selectMenu(params){
        return axios.get(`${base.selectMenu}`,{params});
    },
    // 根据id查询菜单   
    selectMenuById(p){
        return axios.get(`${base.selectMenuById}`,p);
    },
    // 新增菜单
    addMenu(p){
        return axios.post(`${base.addMenu}`,p);
    },
    // 修改菜单
    updateMenu(p){
        return axios.post(`${base.modifyMenu}`,p);
    },
    // 删除菜单
    deleteMenu(p){
        return axios.get(`${base.deleteMenu}`,p);
    },


    // 模糊查询审核记录
    selectAudit(params){
        return axios.get(`${base.selectAudit}`,{params}); 
    },
    // 根据id查询
    selectAuditById(params){
        return axios.get(`${base.selectAuditById}`,params); 
    },
    // 查询审核状态
    selectAuditStatus(params){
        return axios.get(`${base.selectAuditStatus}`,params); 
    },
    // 角色变更新增
    insertAudit(params){
        return axios.post(`${base.insertAudit}`,params); 
    },
    // 修改审核状态
    updateAudit(params){
        return axios.post(`${base.updateAudit}`,params); 
    },
    // 删除审核
    deleteAudit(params){
        return axios.post(`${base.deleteAudit}`,params); 
    },

    // 名词管理操作
    // 1.查询所有
    selectNounAll(params){
        return axios.get(`${base.selectNounAll}`,params);
    },
    // 2.分页查询
    selectNounPage(params){
        return axios.get(`${base.selectNounPage}`,{params})
    },
    // 3.根据id查询
    selectNounById(params){
        return axios.get(`${base.selectNounById}/${params}`,); 
    },

    // 4.新增
    addNoun(params){
        return axios.post(`${base.addNoun}`,params); 
    },
    // 5.修改
    modifyNoun(params){
        return axios.post(`${base.modifyNoun}`,params); 
    },
    // 6.删除
    deleteNoun(params){
        return axios.post(`${base.deleteNoun}`,params); 
    },
    // 7.批量导入名词
    exportData(params){
        return axios.post(`${base.exportData}`,params); 
    },

    // 全文搜索
    searchAll(params){
        return axios.post(`${base.searchAll}`,params); 
    },
    // 高级查询机构
    selectGreatWorks(params){
        return axios.post(`${base.selectGreatWorks}`,params); 
    },
    // 清楚es
    clearEs(){
        return axios.get(`${base.clearEs}`); 
    },
    // 查询所有机构
    selectWorksAll(params){
        return axios.get(`${base.selectWorksAll}`,params); 
    },
    // 查询机构数据
    selectWorks(params){
        return axios.get(`${base.selectWorks}`,{params}); 
    },
    // 根据id查询机构
    selectWorksById(p){
        return axios.get(`${base.selectWorksById}/${p}`); 
    },
    // 新增机构
    addWorks(p){
        return axios.post(`${base.addWorks}`,p); 
    },
    // 修改机构
    modifyWorks(p){
        return axios.post(`${base.modifyWorks}`,p); 
    },
    // 删除机构
    deleteWorks(p){
        return axios.post(`${base.deleteWorks}`,p); 
    },
    // 上传图片
    uploadImg(p){
        return axios.post(`${base.uploadImg}`,p); 
    },
    // 批量导入机构
    exportProgram(params){
        return axios.post(`${base.exportProgram}`,params); 
    },
    // 保存机构审核
    saveProgramCheck(params){
        return axios.post(`${base.saveProgramCheck}`,params); 
    },
    // 查询机构审核数据
    selectProgramCheck(params){
        return axios.get(`${base.historyCheckData}`,{params}); 
    },

    // 查询所有方案
    selectAllProgram(p){
        return axios.get(`${base.selectAllProgram}`,params); 
    },
    //查询方案
    selectProgram(params){
        return axios.get(`${base.selectProgram}`,{params}); 
    },
    // 根据name查询方案
    selectProgramByName(p){
        return axios.get(`${base.selectProgramByName}`,p); 
    },
    // 根据id查询方案
    selectProgramById(p){
        return axios.get(`${base.selectProgramById}/${p}`); 
    },
    // 新增方案
    addProgram(p){
        return axios.post(`${base.addProgram}`,p); 
    },
    // 修改方案
    modifyProgram(p){
        return axios.post(`${base.modifyProgram}`,p); 
    },
    // 删除方案
    deleteProgram(p){
        return axios.post(`${base.deleteProgram}`,p); 
    },

    // 日志查询
    selectLogPage(params){
        return axios.get(`${base.selectLog}`,{params}); 
    },

    // 问题查询
    selectProblem(params){
        return axios.get(`${base.selectProblem}`,{params}); 
    },
    // 问题新增
    insertProblem(params){
        return axios.post(`${base.insertProblem}`,params); 
    },
    // 问题删除
    deleteProblem(params){
        return axios.get(`${base.deleteProblem}`,params); 
    },
    
    // 导出方案
    exportFangan (type,params){
        if(type === 1){
            return axios.get(`${base.exportWord}?id=${params}`,{responseType: 'blob'}); 
        }else if(type === 2){
            return axios.get(`${base.exportExecl}?id=${params}`,{responseType: 'blob'}); 
        }else if(type === 3){
            return axios.get(`${base.exportPdf}?id=${params}`,{responseType: 'blob'}); 
        }
        
    }

}
